//header

Ti.include('nieuwe_leerling.js');
Ti.include('wijzig_leerling.js');

var leerlingen = {};

leerlingen.build = function() {
    
    Ti.Media.vibrate([0, 35]);
    
    LeerlingWin = Ti.UI.createWindow ({
        backgroundColor: '#fff',
        layout: 'vertical',
        navBarHidden:true,
    });
    
	var header = Ti.UI.createView({
	   width: Ti.UI.FILL,
	   height: '85dip',
	   backgroundImage: '/images/header.png',
	   top: 0
	});
    var title = Ti.UI.createLabel({
	    color: '#fff',
	    font: {fontSize:'20dip' },
	    top: '18dip',
	})
    title.text = 'Leerlingenlijst';
    
    header.add(title);
    
    
    if(Ti.Platform.name != 'android')
    {
        var backButton = Ti.UI.createButton({
            title: 'Terug', 
            left: '10dip',
            top: '10dip',
            width: Ti.UI.SIZE,
            height: Ti.UI.SIZE,
            color: '#090C16',    
            visible: true
        });
        
        backButton.addEventListener('click', function(){
            LeerlingWin.close();
        });
        
        header.add(backButton);
	}
    
    
    //plus-knop voor toevoegen leerlingen
    var addLeerling = Ti.UI.createImageView({
       image: '/images/add_knop.png',
       height: '40dip',
       width: '40dip',
       right: '10dip',
       top: '10dip'
        
    });
    
    addLeerling.addEventListener('click', function(e){
       
       nieuweLeerling.build();
        
    });
    
    header.add(addLeerling);
    LeerlingWin.add(header);
    
    LeerlingWin.open();
    
    leerlingen.leerlingenTableViewRows = [];
    var leerlingenArray = Globals.leerlingenArray;
    
    for(var i = 0; i < leerlingenArray.length;i++) {
        var leerling = leerlingenArray[i];
        
        var tableViewRow = Ti.UI.createTableViewRow({title:leerling.naam, leerling: leerling, color: '#000', height: '60dip',  font: {fontSize:'16dip' }});
        tableViewRow.rightImage = '/images/pencil_edit.png';
        
        
        
        leerlingen.leerlingenTableViewRows.push(tableViewRow);
    }
        
    var studentsView = Ti.UI.createView({
        layout: 'vertical'
    });   
    

    leerlingen.studentsTableView = Ti.UI.createTableView({
        data: leerlingen.leerlingenTableViewRows,
        bottom: '30 dip',
        width: Ti.UI.FILL,
    });
    
    
    
    leerlingen.studentsTableView.addEventListener('click', function(e) {
        leerlingen.leerlingRow = e.row;
        wijzigLeerling.build();
    
    });

     
     	
    leerlingen.studentsTableView.addEventListener('longpress', removeFunction);
    if (Ti.Platform.osname == "android") {
    	leerlingen.studentsTableView.addEventListener('longclick', removeFunction);
    }

     
     studentsView.add(leerlingen.studentsTableView);
    
    
     LeerlingWin.add(studentsView);
     
     
     function removeFunction(e)
     {
         if(Ti.Platform.name === 'android')
         {
            leerlingen.removeRow = e.row;
            leerlingen.rowIndex = e.index;
            
            var alertMsg = Ti.UI.createAlertDialog({
                cancel: 1,
                buttonNames: ['OK', 'Annuleer'],
                message: 'Weet u zeker dat u leerling ' + leerlingen.removeRow.leerling.naam + ' wilt verwijderen?',
                title: 'Verwijder'
            });
            
            alertMsg.addEventListener('click', function( evt ) {
                if( evt.index === 0 ) {
                    for(var i = 0; i < Globals.leerlingenArray.length; i++) {
                        if(Globals.leerlingenArray[i].id == leerlingen.removeRow.leerling.id) {
                            Globals.leerlingenArray.splice(i, 1);
                        }
                    }
                    RemoveLeerlingFromXML(leerlingen.removeRow.leerling);
                    leerlingen.studentsTableView.deleteRow(leerlingen.rowIndex);
                }
            });
            alertMsg.show();
        }
        else
        {
            
            e.source.editing = true;
            backButton.visible = true;
        }
         
     }
    
    //Delete from XML
    function RemoveLeerlingFromXML(leerling) {
        
        Ti.Media.vibrate([0, 35]);
        
        var target = Globals.getSupportFile('leerlingen.xml');
        
        if(target.exists()) {
            var xmltext = target.read().text;
            var doc = Ti.XML.parseString(xmltext);
            var root = doc.getDocumentElement();
            
            var nodelist = doc.getElementsByTagName("leerling");
            
            for(var i = 0; i<nodelist.length; i++ ) {
                if (nodelist.item(i).getAttributes().getNamedItem("leerlingid").nodeValue == leerling.id) {         
                    root.removeChild(nodelist.item(i));
                }
            }
            target.write(Ti.XML.serializeToString(doc));
        }
    }
	
}
leerlingen.checkName = function(txtbox) {
	if(txtbox.value === "") {
		Globals.setTextBoxErrorColor(txtbox);
		return false;
	}
	else {
		Globals.resetTextBoxErrorColor(txtbox);
		return true;
	}
}
leerlingen.checkNameEvent = function(e) {
	leerlingen.checkName(e.source);
}

leerlingen.emailChecker = function(txtbox) {
	var pattern=/^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/;
	if(pattern.test(txtbox.value) || txtbox.value == "") {
		Globals.resetTextBoxErrorColor(txtbox);
	    return true;
	}
	else {
		Globals.setTextBoxErrorColor(txtbox);
	}
	return false;
}
leerlingen.emailCheckerEvent = function(e) {
	leerlingen.emailChecker(e.source);
}
